# -*- coding: utf-8 -*-


# WMS的接口名称和ir.config_parameter的key值映射关系
API_DICT = {
    # '接口名称'： （config_parameterKey, method, client_db, messageid）
    'product': ('putSKUData', 'FLUXWMSJSON', 'SKU', '产品'),    # 产品
    'partner': ('putCustData', 'FLUXWMSJSON', 'CUSTOMER', '客商'),    # 客商
    'in_stock': ('putPOData', 'FLUXWMSJSON', 'PO', '入库单'),  # 入库单
    'out_stock': ('putSOData', 'FLUXWMSJSON', 'SO', '出库单'),# 出库单
    'in_stock_cancel': ('cancelASNData', 'FLUXWMSJSON', 'ASNC', '入库单取消'),    # 入库单取消
    'out_stock_cancel': ( 'cancelSOData', 'FLUXWMSJSON', 'SOC', '出库单取消'), # 出库单取消
    'in_stock_detail_query': ('getASNData', 'FLUXWMSJSON', 'ASNDATA', '入库明细查询'),    # 入库明细查询
    'out_stock_detail_query': ('confirmSOData', 'FLUXWMSJSON', 'SODATA', '出库明细查询'), # 出库明细查询
    'adj_stock_detail_query': ('confirmADJData', 'FLUXWMSJSON', 'ADJDATA', '调整明细查询'),  # 调整明细查询
    'trans_stock_detail_query': ('confirmTRData', 'FLUXWMSJSON', 'TRDATA', '转移明细查询'),  # 转移明细查询
    'move_stock_detail_query': ( 'confirmMoveData', 'FLUXWMSJSON', 'MOVEDATA', '移动明细查询'),   # 移动明细查询
    'confirm_business_query': ( 'confirmBusyData', 'FLUXWMSJSON', 'BUSYCF', '业务查询'),  # 业务查询
}

ERROR_CODE = {
    '0000': '成功',
    'S000': '数据校验异常',
    'S001': '验签错误',
    'S002': '系统异常',
    'S003': '数据错误',
    'S004': '货主错误',
    'S006': '记录已存在且不允许修改',
    'S007': '其他错误',
}


from . import models
from . import controllers

from odoo import api, SUPERUSER_ID

def fill_initial_api_info(cr, registry):
    """填充默认接口信息"""
    env = api.Environment(cr, SUPERUSER_ID, {})
    env['nd.wms.api'].search([]).unlink()
    datas = []
    for e_id, data in API_DICT.items():
        data = {
            'e_id': e_id,
            'name': data[3],
            'api_method': data[0],
            'client_db': data[1],
            'messageid': data[2]
        }
        datas.append(data)
    env['nd.wms.api'].create(datas)
    env['ir.config_parameter'].set_param('nd.wms.api.timestamp_type', '%Y-%m-%d %H:%M:%S')
    return

def clear_api_info(cr, registry):
    """清除接口信息"""
    env = api.Environment(cr, SUPERUSER_ID, {})
    env['nd.wms.api'].search([]).unlink()




